/* _________________________________________________

320 and Up boilerplate extension

Author: Andy Clarke
Version: 0.9b
URL: http://stuffandnonsense.co.uk/projects/320andup/
_____________________________________________________

1.ROOT
2.GRID
3.HEADINGS
4.TYPOGRAPHY
5.LINKS
6.FIGURES & IMAGES
7.TABLES
8.FORMS (See css/mylibs/forms.css)
9.BANNER header[role="banner"]
10.NAVIGATION nav[role="navigation"]
11.CONTENT
12.MAIN div[role="main"]
13.COMPLIMENTARY div[role="complementary"]
14.CONTENTINFO footer[role="contentinfo"]
15.GLOBAL OBJECTS
16.VENDOR-SPECIFIC 
17.TEMPLATE SPECIFICS
18.MODERNIZR

COLOURS 

*/

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
margin : 0;
padding : 0;
border : 0;
font-size : 100%;
font : inherit;
vertical-align : baseline; }

article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
display : block; }

abbr[title] { 
border-bottom : 1px dotted; 
cursor : help; }

/* 1.ROOT */

html {
overflow-y : scroll;
 }

body { 
margin : 0 auto;
min-width: 270px;
max-width: 480px;
height: 100%;
}



body, button, input, select, textarea {
	font: 16px/1.625 Arial, Helvetica, sans-serif;
	_font-size: 1em; /* IE6 can't resize px-based text and most mobiles don't default the text to 16px */
	color: #333; /* Black on white is too much contrast, #333 is a lot better */
}

/* 2.GRID */

.grid_1,
.grid_2,
.grid_3,
.grid_4,
.grid_5,
.grid_6,
.grid_7,
.grid_8,
.grid_9,
.grid_10,
.grid_11,
.grid_12,
.grid_13,
.grid_14,
.grid_15,
.grid_16 {
  display: inline;
  float: left;
  margin-left: 10px;
  margin-right: 10px;
}
	
.alpha {margin-left:0}

.omega {margin-right:0}

.container {
	margin-left:auto;
	margin-right:auto;
	width:320px
	}

.grid_1 {width:60px}
.grid_2 {width:140px}
.grid_3 {width:220px}
.grid_4 {width:300px}

.prefix_1 {padding-left:80px}
.prefix_2 {padding-left:160px}
.prefix_3 {padding-left:240px}

.suffix_1 {padding-right:80px}
.suffix_2 {padding-right:160px}
.suffix_3 {padding-right:240px}



/* 3.HEADINGS */

h1, h2, h3, h4, h5, h6 {
	font-size: 1em;
	font-weight: normal;
	color: #111; /* More contrast than body text for headings */
}

h1 {
	font-size: 1.625em; /* 26px */
	line-height: 1em;
	margin: 0 0 1em 10px;

}

h2 {
	font-size: 2.625em; /* 42px */
	line-height: 1.2381em;
	margin: 0 0 0.619em;
}

h3 {
	font-size: 1.625em; /* 26px */
	line-height: 1em;
	margin: 0 0 1em;
}

h4, h5, h6 {
	font-size: 1em; /* 16px */
}


/* 4.TYPOGRAPHY */

p, blockquote, q, pre, address, hr, code, samp, dl, ol, ul, form, table, fieldset, menu, h4, h5, h6, img {
	margin: 0 0 1.625em;
}

ul, ol {
	padding: 0;
}

ul { 
	list-style-type : disc; }

ol { 
	list-style-type : decimal; }

li ul, 
li ol { 
	margin: 0 1.625em;
}

dl, 
dd { 
margin-left: 1.625em; }

dt { 
font-weight : normal; }



blockquote  { 
margin : 0 0 1.5em -24px; 
padding-left : 24px; 
border-left : 1px solid rgb(200,200,200);
font-style : italic; }

blockquote:before, 
blockquote:after, 
q:before, 
q:after {
content : '';
content : none; }

b, 
strong	{ 
font-weight : bold; }

i, 
em { 
font-style : italic; }

sup, 
sub { 
position : relative;
font-size : 75%; 
line-height : 0; }

sup { 
top : -.5em; }

sub { 
bottom : -.25em; }

address { 
font-style : normal; }

pre { 
margin-bottom : 1.5em; 
white-space : pre; 
white-space : pre-wrap; 
word-wrap : break-word; }

pre, 
code { 
font : .875em 'andale mono', 'lucida console', monospace; 
line-height : 1.5; }

small {
font-size : 1em; /* 16 / 16 = 1 */ }

/* 5.LINKS */

a, a:visited {
	color: #333;
	text-decoration: none;
}

a:hover {
	text-decoration: underline;
}

a:focus {
	outline: thin dotted;
}

/* Better CSS outline suppression: people.opera.com/patrickl/experiments/keyboard/test */
a:hover, a:active {
	outline: none;
}


/* 6.FIGURES & IMAGES */

figure {
	margin: 0;
}

img, object, embed, video {
	max-width: 100%; /* Consider this first: unstoppablerobotninja.com/entry/fluid-images/ */
	_width: 100%; /* IE6 doesn't support max-width, so we just use width: 100%. If the image/video is smaller than the container, change 100% to an absolute value */
}

img {
	border: 0;
	-ms-interpolation-mode: bicubic; /* Improve IE's resizing of images: css-tricks.com/ie-fix-bicubic-scaling-for-images */
}

/* Corrects overflow displayed oddly in IE9 */
svg:not(:root) {
	overflow: hidden;
}

/* 7.TABLES */

table {
	border-collapse: collapse;
	border-spacing: 0;
}

th {
	text-align: left;
}

tr, th, td {
	padding-right: 1.625em;
	border-bottom: 0 solid #333;
}

/* 8.FORMS (See css/mylibs/forms.css) */

form { 
margin-bottom : 1.625em; }

form ul {
	list-style: none;
	padding: 0;
	margin: 0;
}

fieldset { 
margin-bottom : 1.625em; 
padding : 0.625em 2%; 
border-width : 0;
background: #D9DFFF; }



.label { 
font-weight : bold; }

button, 
input, 
select, 
textarea { 
margin : 0; }

.label
input[type="button"], 
input[type="submit"], 
input[type="image"], 
button { 
cursor : pointer; }

input, 
select { 
vertical-align : middle; }

input[type=text], 
input[type=password],
input[type=tel],
input[type=email],
input[type=url],
input[type=search],
textarea {
padding : 2px;
width : 100%;
background-color : rgb(255,255,255);
border : 1px solid rgb(200,200,200); 
font-family : inherit;
font-size : inherit; }

.field {
	display: block;
	padding : 2px;
width : 100%;
}

input[type=text]:focus, 
input[type=password]:focus,
input[type=tel]:focus,
input[type=email]:focus,
input[type=url]:focus,
input[type=search]:focus,
textarea:focus {
border-color : rgb(100,100,100); }


input[type="checkbox"] { 
vertical-align : middle;
margin-top: -1px;
margin-left: 10px; }

/* Colors for form validity */
input:valid, 
textarea:valid   {  
/* Styles */ }

input:invalid, 
textarea:invalid {
-webkit-box-shadow : 0 0 2px rgb(255,0,0); 
-moz-box-shadow : 0 0 2px rgb(255,0,0);
box-shadow : 0 0 2px rgb(255,0,0); }

.no-boxshadow input:invalid, 
.no-boxshadow textarea:invalid {
background-color : rgb(240,221,221); }

select { 
margin : .5em 0;
background-color : rgb(255,255,255);
border-width : 1px; 
border-style : solid; }


button {  
width : auto;
overflow : visible; 
padding-left: 15px;
padding-top: 0;
background:url(../img/button.png) no-repeat left -110px;
border: 0px;
font-weight: bold;
text-align : center; 
color : #FFF;
height: 35px; 
float: right;
margin-right: 10px;}

button span {
	background:url(../img/button.png) no-repeat right -165px;
	padding: 5px 15px 0 0;
	display: block;
	height: 30px;
}

button:hover {
cursor : pointer; 
background:url(../img/button.png) no-repeat left top;
}

button span:hover {
	background:url(../img/button.png) no-repeat right -55px;
}

.ie6 input { 
vertical-align : text-bottom; }

.ie7 input[type="checkbox"],
.iem7 input[type="checkbox"] { 
vertical-align : baseline; }


/* 9.BANNER */



header {
	background: #081d7f;
	margin-top: 0px;
	padding: 0.625em 0;
	margin-bottom: 0.625em;
	
}

header h1 {
	background: url(../img/shield.png) left no-repeat;
	color: #FFF;
	text-transform: uppercase;
	margin-left: 10px;
	padding-left: 35px;
	margin-bottom: 0;
}

header h1 a, header h1 a:visited {
	color: #FFF;
}

header h1 a:hover {
	text-decoration: none;
}
.home header {
	text-align: center;
	background: #FFF;
}
.home header h1 {
	margin: 0;
	padding: 0;
}

/* 10.NAVIGATION */

.mobile ul {
	list-style: none;
}

.mobile a {
	display: block;
}

.mobile a:hover {
	text-decoration: none;
}

.mobile a, .mobile a:visited {
	color: #FFF;
}

.mobile ul {
	padding: 0 5px;
}

.mobile li {
	float: left;
	width: 25%;
}

.mobile li a {
	margin: 0 2.5px;
	padding-left: 2.5px;
	padding-right: 2.5px;
	padding-top: 1em;
	text-align: center;
	font-size: 0.8em;
	font-weight: bold;
	height: 2.625em;
}	

.mobile .log-link {
	padding: 2.5px 0.625em;
}

.report .mobile .report-link {
	background: #3D4FA6;
}


.home .mobile ul {
	width: 220px;
	margin: 0 auto;
	padding: 0;
}

.home .mobile li {
	float: none;
	width: 100%;
	background:url(../img/button.png) no-repeat left top;
	margin-bottom:  1.625em;
	height: 35px;
	padding-left: 15px;
	padding-top: 0;
}

.home .mobile a {
	background:url(../img/button.png) no-repeat right -55px;
	height: 32px;
	text-align: center;
	margin: 0;
	padding: 5px 15px 0 0;
	height: 30px;
	font-size: 1em;
}
button {  
width : auto;
overflow : visible; 
padding-left: 15px;
padding-top: 0;
background:url(../img/button.png) no-repeat left -110px;
border: 0px;
font-weight: bold;
text-align : center; 
color : #FFF;
height: 35px; 
float: right;
margin-right: 10px;}

button span {
	background:url(../img/button.png) no-repeat right -165px;
	padding: 5px 15px 0 0;
	display: block;
	height: 30px;
}

button:hover {
cursor : pointer; 
background:url(../img/button.png) no-repeat left top;
}

button span:hover {
	background:url(../img/button.png) no-repeat right -55px;
}




/* 11.CONTENT */



/* 12.MAIN */

#location-not-found,
#location-found {
	display: none;
}

.submit {
	text-align: right;
	padding-right: 10px;
	margin-top: 1.625em;
}


/* 13.COMPLIMENTARY */
/* 14.CONTENTINFO */

footer {
	background: #081d7f;
}

footer span {
	color: #E5E5E5;
}

/* 15.GLOBAL OBJECTS */

.clearfix { 
zoom : 1; }

.clearfix:before, 
.clearfix:after { 
content : "\0020"; 
display : block; 
height : 0; 
overflow : hidden; }

.clearfix:after { 
clear : both; }

/* 16.VENDOR-SPECIFIC */

body {
-webkit-text-size-adjust : 100%; 
-ms-text-size-adjust : 100%; }

a:link { 
-webkit-tap-highlight-color : rgb(52,158,219); }

::-webkit-selection { 
background : rgb(23,119,175); 
color : rgb(250,250,250); 
text-shadow : none; }

::-moz-selection { 
background : rgb(23,119,175); 
color : rgb(250,250,250); 
text-shadow : none; }

::selection { 
background : rgb(23,119,175); 
color : rgb(250,250,250); 
text-shadow : none; }

/* input[type=search] {
-webkit-appearance : none; }

input[type="search"]::-webkit-search-decoration, 
input[type="search"]::-webkit-search-cancel-button {
display : none; } */

::-webkit-input-placeholder {
padding : 10px;
font-size : .875em; 
line-height : 1.4; }

input:-moz-placeholder { 
padding : 10px;
font-size : .875em; 
line-height : 1.4; }

.ie7 img,
.iem7 img { 
-ms-interpolation-mode : bicubic; }

div,
input,
textarea  { 
-webkit-box-sizing : border-box;
-moz-box-sizing : border-box;
-o-box-sizing : border-box;
box-sizing : border-box; }

/* Non-semantic helper classes */

/* Image replacement */
.ir { 
display : block; 
text-indent : -999em; 
overflow : hidden; 
background-repeat : no-repeat; 
text-align : left; 
direction : ltr; }

/* Hide for screenreaders and visual browsers */
.hidden { 
display : none; 
visibility : hidden; }

/* Hide visually */
.visuallyhidden { 
position : absolute;
clip : rect(0 0 0 0); 
overflow : hidden;
margin: -1px;
padding : 0;
height : 1px;      
width : 1px;
border : 0; }

/* Allow an element to be focusable via keyboard  */
.visuallyhidden.focusable:active,
.visuallyhidden.focusable:focus { 
position : static;
clip : auto; 
overflow : visible;
height : auto; 
margin : 0;   
width : auto; }

/* Hide but maintain layout */
.invisible { 
visibility : hidden; }

/* 17.TEMPLATE SPECIFICS */

#goog-fixurl ul  {
list-style-type : none; }

#goog-fixurl input  {
margin-bottom : 1.5em; }

/* 18.MODERNIZR */

/* MEDIA QUERIES */

/*Print __________________________________________________________________________________________________________ */
@media print {
* { 
background : transparent !important; 
color : black !important; 
text-shadow : none !important; 
filter : none !important;
-ms-filter : none !important; } 

a, a:visited { 
color : #444 !important; 
text-decoration : underline; }

a[href]:after { 
content : " (" attr(href) ")"; }

abbr[title]:after { 
content : " (" attr(title) ")"; }

a[href^="javascript:"]:after, 
a[href^="#"]:after { 
content : ""; }
  
pre, blockquote { 
border : 1px solid #999; 
page-break-inside : avoid; }

thead { 
display : table-header-group; }

tr, img { 
page-break-inside : avoid; }

@page { 
margin : .5cm; }

p, h2, h3 { 
orphans : 3; 
widows : 3; }

h2, h3 { 
page-break-after : avoid; }
}/*/mediaquery*/

